import hashlib
# import base64

# 假设你已经有了支付宝官方工具生成的公钥（PEM 格式）
# 公钥示例（实际使用时替换为你自己的公钥内容，这里是之前版本的应用公钥，但后面改成了证书加签的方式，应用公钥又重新生成了）
alipay_public_key_pem = """
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAjB0ECP7ShYMZHtcLYtJY4MdO2L+4zgCUCWvy6R7Zeg4apissl2etzErR2I06PzWS5gbtrQWynYn1EB16e9UHwRK22W3Aa2tOC+P2/xIUSun8+JRaXW/443b5FF+8Azfpd5DtJYhpLDG71dX3WUGZ4GgNJMSPqf2yKOOekMDy12RLVnC4NWKsOnPKNmvVhbUsve6+CaNAWcPB7resuid1tHeetZ455zKJwSXjwo83CvoJyDilreVIw7AhgRjICNqJl4bmvEoTIiPHmGpdjawpTO1FVeTPBiOZa13wiaL8qQZMZ9Rcj1HitF0Z6oWyPSKfy0NDvRmahUOgH+xa963PLQIDAQAB
""".strip().encode('utf-8')

# 计算公钥的 SHA1 哈希值
sha1 = hashlib.sha1()
sha1.update(alipay_public_key_pem)
signature_hash = sha1.hexdigest().upper()  # 转为大写

# 格式化为 "XX:XX:XX..." 的形式（符合支付宝要求）
formatted_signature = ':'.join([signature_hash[i:i+2] for i in range(0, len(signature_hash), 2)])

print(f"临时应用签名: {formatted_signature}")  #  AD:2F:64:C1:65:43:4F:5B:BC:EC:62:00:EA:80:AC:63:B3:EB:7B:A2
print(f"无格式版本 (可直接复制): {signature_hash}") # AD2F64C165434F5BBCEC6200EA80AC63B3EB7BA2